//给你一个字符串 text，你需要使用 text 中的字母来拼凑尽可能多的单词 "balloon"（气球）。 
//
// 字符串 text 中的每个字母最多只能被使用一次。请你返回最多可以拼凑出多少个单词 "balloon"。 
//
// 
//
// 示例 1： 
//
// 
//
// 输入：text = "nlaebolko"
//输出：1
// 
//
// 示例 2： 
//
// 
//
// 输入：text = "loonbalxballpoon"
//输出：2
// 
//
// 示例 3： 
//
// 输入：text = "leetcode"
//输出：0
// 
//
// 
//
// 提示： 
//
// 
// 1 <= text.length <= 10^4 
// text 全部由小写英文字母组成 
// 
// Related Topics 哈希表 字符串 计数 
// 👍 52 👎 0

  
package com.zwy.leetcode.editor.cn;
/**
 * @author zwy 
 */
public class MaximumNumberOfBalloons{
    public static void main(String[] args) {
        Solution solution = new MaximumNumberOfBalloons().new Solution();
        
      }
     
/**
 *时间复杂度为:
 * @author zwy 
 */ 
      //leetcode submit region begin(Prohibit modification and deletion)
class Solution {
    public int maxNumberOfBalloons(String text) {
        int bCount=0;
        int aCount=0;
        int lCount=0;
        int oCount=0;
        int nCount=0;
        int min=0;
        for (int i = 0; i < text.length(); i++) {
            if(text.charAt(i)=='b'){
                bCount++;
            }
            else if(text.charAt(i)=='a'){
                aCount++;
            }
            else if(text.charAt(i)=='l'){
                lCount++;
            }
            else if(text.charAt(i)=='o'){
                oCount++;
            }
            else if(text.charAt(i)=='n'){
                nCount++;
            }
        }
        min=Math.min(bCount,aCount);
        min=Math.min(min,lCount/2);
        min=Math.min(min,oCount/2);
        min=Math.min(min,nCount);
        return min;
    }
}
//leetcode submit region end(Prohibit modification and deletion)

}